package com.swing.JComboBox;

import javax.swing.*;
import java.awt.*;

public class MyFrame extends JFrame {

    //JComboBox就一个泛型，泛型参数类型是数据项的类型
    JComboBox<String> colorList = new JComboBox<>();
    JLabel sampleText = new JLabel("文本样例 This is a sample");


    public MyFrame(String title) {
        super(title);


        //内容面板
        Container container = getContentPane();
        container.setLayout(new FlowLayout());

        //添加控件
        container.add(colorList);
        container.add(sampleText);

        //添加数据项
        colorList.addItem("红色");
        colorList.addItem("蓝色");
        colorList.addItem("绿色");
        //addItem(T),T的类型在创建时指定，这里是String类型，也就是一项Item的数据类型是String


        colorList.addActionListener(e -> {
            updateColor();
        });


    }

    //更新JLabel的颜色的显示
    private void updateColor(){
        //获取选中的颜色
        String item = (String) colorList.getSelectedItem();

        //根据选择的颜色，设置JLabel文字颜色
        Color color = null;
        if(item.equals("红色")){
            color = Color.RED;
        } else if (item.equals("蓝色")){
            color = Color.BLUE;
        } else {
            color = Color.GREEN;
        }

        sampleText.setForeground(color);


    }



}
